lan = input()
print('YES' if 'H' in lan or 'Q' in lan or '9' in lan else 'NO')
#include<bits/stdc++.h>
using namespace std;
#define endl "\n"
#define fastio ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
typedef long long ll;
typedef long double ld;
#define pb(a) push_back(a);
#define max3(a,b,c) max(max(a,b),c)
#define max4(a,b,c,d) max(max(a,b),max(c,d))
#define fr(i,k,n) for(ll i=0;i<k;i++)
ll t,q,n,m,w,h,k,l,r,x,a,b,c,y,d,i,j,f,g,count,nl,np,p;
int main() {
fastio;
string s;
cin>>s;
ll temp=-1;
for(i=0;i<s.length();i++)
{
if(s[i]=='H'||s[i]=='Q'|| s[i]=='9')
{temp++;
cout<<"YES"<<endl;
break;
}}
if(temp==-1)
cout<<"NO"<<endl;}
445. Add Two Numbers II | 442. Find All Duplicates in an Array |
437. Path Sum III | 436. Find Right Interval |
435. Non-overlapping Intervals | 406. Queue Reconstruction by Height |
380. Insert Delete GetRandom O(1) | 332. Reconstruct Itinerary |
368. Largest Divisible Subset | 377. Combination Sum IV |
322. Coin Change | 307. Range Sum Query - Mutable |
287. Find the Duplicate Number | 279. Perfect Squares |
275. H-Index II | 274. H-Index |
260. Single Number III | 240. Search a 2D Matrix II |
238. Product of Array Except Self | 229. Majority Element II |
222. Count Complete Tree Nodes | 215. Kth Largest Element in an Array |
198. House Robber | 153. Find Minimum in Rotated Sorted Array |
150. Evaluate Reverse Polish Notation | 144. Binary Tree Preorder Traversal |
137. Single Number II | 130. Surrounded Regions |
129. Sum Root to Leaf Numbers | 120. Triangle |